home *** CD-ROM | disk | FTP | other *** search
/ MacFormat 1997 March / macformat-048.iso / Shareware Plus / Updaters / NewsWatcher 2.15+jp1 folder / patch source CW10 / myMime.h < prev    next >
Encoding:
Text File  |  1996-12-16  |  2.1 KB  |  93 lines  |  [TEXT/CWIE]

  1. // ==================================================
  2. //    myMime.h
  3. //    Copyright (C) 1996 Mizutori Tetsuya, August 20, 1996, October 7, 1996.
  4. // ==================================================
  5. //    This document is pretty-printed in 10-point Geneva font.
  6.  
  7. //#define MIME_ENCODE    1
  8. #define MIME_DECODE    1
  9.  
  10.  
  11. #ifdef MIME_ENCODE
  12. static unsigned long    CalcMimeEncodeLength(
  13.             unsigned long        textSize );
  14.  
  15. void    MimeEncode(
  16.             Handle            textH,
  17.             unsigned long *        textSize );
  18.  
  19. void    MimeEncodeJIS(
  20.             Handle            textH,
  21.             unsigned long *        textSize );
  22.  
  23. unsigned long MimeEncodeText(
  24.             const unsigned char *    pStart,
  25.             const unsigned long    pLen,
  26.             unsigned char *        qStart,
  27.             unsigned long *        qLen );
  28.  
  29. static void    Base64EncodeBody(
  30.             const unsigned char *    p,
  31.             const unsigned long    pLen,
  32.             unsigned char *        q,
  33.             unsigned long *        qLen );
  34.  
  35. static void    Base64Encode324(
  36.             const unsigned char *    p3,
  37.             const unsigned long    pLen,
  38.             unsigned char *        q4,
  39.             unsigned long *        qLen );
  40.  
  41. #endif // MIME_ENCODE
  42.  
  43.  
  44. #ifdef MIME_DECODE
  45. void    MimeDecode(
  46.             Handle            textH,
  47.             unsigned long *        textSize );
  48.  
  49. unsigned long MimeDecodeText(
  50.             const unsigned char *    pStart,
  51.             const unsigned long    pLen,
  52.             unsigned char *        qStart,
  53.             unsigned long *        qLen );
  54.  
  55. static void    Base64DecodeBody(
  56.             const unsigned char *    p,
  57.             const unsigned long    pLen,
  58.             unsigned char *        q,
  59.             unsigned long *        qLen );
  60.  
  61. static void    Base64Decode423(
  62.             const unsigned char *    p4,
  63.             const unsigned long    pLen,
  64.             unsigned char *        q3,
  65.             unsigned long *        qLen );
  66. #endif // MIME_DECODE
  67.  
  68. static Boolean    IsCharBase64(
  69.             unsigned char        theChar );
  70.  
  71. static Boolean    FindToken(
  72.             const unsigned char *    pStart,
  73.             const unsigned long    pLen,
  74.             const unsigned char *    token,
  75.             const unsigned long    tokenLen,
  76.             unsigned long *        index );
  77.  
  78. static Boolean    IsSameString(
  79.             const unsigned char *    strA,
  80.             const unsigned long    strALen,
  81.             const unsigned char *    strB,
  82.             const unsigned long    strBLen );
  83.  
  84. #ifdef MIME_ENCODE
  85. static unsigned long    TextAppend(
  86.             Handle            textH,
  87.             unsigned long *        textSize,
  88.             unsigned char *        pStart,
  89.             unsigned char *        pEnd );
  90. #endif // MIME_ENCODE
  91.  
  92. // end of definition
  93.